IP-based networks in general do not employ reservation schemes to isolate different communication sessions from one another. This means that applications may need to use appropriate congestion control mechanisms when communicating over internet protocol (IP) paths. Such mechanisms are usually designed to protect the IP-based network from excessive congestion and establish at least some fairness between concurrent transmissions that share at least part of the same path. Many applications do this by using a transport protocol that inherently provides such congestion control. Some applications use the transmission control protocol (TCP), some use the stream control transmission protocol (SCTP) or the datagram congestion control protocol (DCCP). Other applications choose to implement appropriate congestion control inside the application itself, for example, by following the TCP friendly rate control (TFRC) algorithm. Although effective for bulk data transmissions, these protocols may not be optimally suited to stream live or pre-recorded media traffic over the Internet.